self.onmessage = async (e: MessageEvent) => {
  const { index, chunk } = e.data; // slice 是 File.slice() 的结果

  try {
    const reader = new FileReaderSync(); // 👈 注意：Sync！
    const buffer = reader.readAsArrayBuffer(chunk); // 直接返回 ArrayBuffer！
    // transfer ArrayBuffer 所有权，减少内存拷贝
    self.postMessage({ index, buffer });
  } catch (err) {
    self.postMessage({ index, error: err });
  }
};
